#!/usr/bin/env bash
CP="classes"
SP="src/main/java"

if [ -e shareschain.jar ]; then
    /bin/rm -rf shareschain.jar
fi

if [ -d classes ]; then
    /bin/rm -rf classes
fi
/bin/mkdir -p classes
find src/main/java/ -name "*.java" > sources.tmp
javac -encoding utf8 -verbose -sourcepath "${SP}" -classpath "${CP}" -d classes/ @sources.tmp || exit 1
/bin/rm -rf sources.tmp

# --sourcepath 指定源代码的路径，使得编译器在根据类的依赖关系寻找相应的类时以此参数为根目录，根据package名和类名找到相应的源代码进行编译
# --classpath 指定用户已经编译的类的路径 使得编译器在根据类的依赖关系寻找相应的类时以此参数为根目录，根据package名和类名最终定位了需要用的已经编译的类
# 如果两个参数都加了，那么编译器会自动判断哪个文件较新，从而选择是否从源代码编译。

echo "shareschain core class files compiled successfully"


